package com.chaoxi.picturebackend.api.aliyunai.model.Texttoimage;

import cn.hutool.core.annotation.Alias;
import lombok.Data;
import java.io.Serializable;

/**
 * 文字生成图片请求类
 */
@Data
public class TextToImageRequest implements Serializable {
    /**
     * 模型名称
     */
    private String model;
    
    /**
     * 输入参数
     */
    private Input input;
    
    /**
     * 图像处理参数
     */
    private Parameters parameters;

    @Data
    public static class Input implements Serializable {
        /**
         * 正向提示词
         */
        private String prompt;
        
        /**
         * 反向提示词
         */
        @Alias("negative_prompt")
        private String negativePrompt;
    }

    @Data
    public static class Parameters implements Serializable {
        /**
         * 输出图像的分辨率
         */
        private String size;
        
        /**
         * 生成图片的数量
         */
        private Integer n;
        
        /**
         * 是否开启prompt智能改写
         */
        @Alias("prompt_extend")
        private Boolean promptExtend;
        
        /**
         * 是否添加水印标识
         */
        private Boolean watermark;
        
        /**
         * 随机数种子
         */
        private Long seed;
    }
}